package com.sky.mapper;

import com.sky.annotation.AutoFill;
import com.sky.dto.SetmealDTO;
import com.sky.entity.Setmeal;
import com.sky.entity.SetmealDish;
import com.sky.enumeration.OperationType;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface SetMealDishMapper
{
   /**
    * 根据菜品id查询对应的套餐id信息
    * @param ids
    * @return
    */

   List<SetmealDish> SelectByDishIds(List<Long> ids);

   /**
    * 根据套餐id查询本中间表的信息
    * @param setmealId
    * @return
    */
   List<SetmealDish> SelectBySetmealId(Long setmealId);


   /**
    * 根据套餐id删除本中间表的信息
    * @param ids
    */
   void deleteBySetmealIds(List<Long> ids);
//
//   /**
//    * 跟据前端提供的中间表对象修改中间表的信息
//    * @param setmeal
//    */
//   void update(SetmealDTO setmealDTO);

   /**
    * 根据单个套餐id进行单个删除
    * @param id
    */
   @Delete("delete from setmeal_dish where setmeal_id=#{id}")
   void deleteBySetmealId(Long id);

   /**
    * 批量插入套餐菜品信息
    * @param setmealDishes
    */
//   @AutoFill(value = OperationType.INSERT)
   void insertBatch(List<SetmealDish> setmealDishes);
}
